前のページ   後のページ   目次へ

********************************

       ■■■■
     ■    ■       ■        ■
     ■           ■■■      ■■■
     ■    ■       ■        ■
       ■■■■
               〜基礎から ★ C++Programing〜
********************************

  【注意】 このマガジンは、最大化してお読みください。
       また、等角フォントでお読みください。
          (MS ゴシックなど)

********************************

 発行者      むーくん
 マガジンNO.  69(5−9)訂正
 発行日      2001/2/18
 講読人数     2000名ぐらい
 マガジンID   0000050494
          このマガジンは、まぐまぐから配信されています。
********************************
★目次★

・例題2
・復習
・予告

********************************
★例題2★

・ユーザーが入力した値が、素数であるかを判定しなさい。
 素数とは、1とその数値以外に約数がないもののことである。

 但し、数値の平方根以下に約数はありません。(数学による)



#include<iostream>
#include<cmath>              /* 数学関数ヘッダ */
using namespace std;

int main(void){
    int input, i, limit;


    do{
        cout << "素数かどうか判定したい数値を入力せよ。 : ";
        cin >> input;
    }while(input <= 1);                 /* 入力値は1以下にしたい */
    limit = sqrt(input);                 /* 平方根を求める */

    for(i=2; i<=limit; i++){            /* 平方根の値までしらべる */
        if( (input%i)==0 ){            /* 約数があったら */
            break;                     /* ループから抜ける */
        }
    }

    if(i!=limit+1){                     /* 約数が見つからなかったら */
        cout << input << "は素数でない" << endl;
    }
    else{
        cout << input << "は素数です" << endl;
    }
    return 0;
}

【解説】
  cmathは、数学関係の関数を集めたものです。
  ここでは、平方根を求めるために必要でした。

  「約数は平方根以下にない」ことが分かっているので、
  forループは、平方根までの繰り返しになっています。

    ※平方根を求めるには、「sqrt( )」を使用します。
               (スクウェア ルートの略)


  入力値を割った余りがゼロになったら、
  その数が割り切れたということになります。
  つまり、素数でないことが判明するので、ループからbreakします。


  途中でbreakしたならば、i の値は、limitまでは到達していない
  ハズです。
  つまり、i が limit でなかったら
  割りきれる数がある → 素数でない  といえます。


********************************
★免責事項★

このメールマガジンのあらゆる事項について、
運用は自由ですが、個人で責任を持ってください。

作者は一切責任を持ちません。ご注意ください。
********************************


講読解除はこちら

http://members.tripod.co.jp/mukun_mmg/mmg/cpp.html

バックナンバーはこちら
http://members.tripod.co.jp/mukun_mmg/mmg/cpp.html

内容について質問やご意見など
smukun@hotmail.com

筆者のWebサイト(むーくんの理学的なんでも講座)
http://members.tripod.co.jp/mukun_mmg/

************************************

前のページ   後のページ   目次へ

[PR]横浜で超魅力価格の記念写真を:記念写真が大人気、結婚写真、成人式写真